WCodeLyokoYT (Normal User)
Newbie
Messaggi: 16
Iscritto: 27/09/2014
|
Ciao! Sono tre ore che tento di capire come fare questa cosa, ma non ci riesco.
In pratica ho un file di testo e due combobox, e con il file di testo le volevo riempire entrambi. Allora, Il file contiene <SOLO NUMERI> e <PAROLE E NUMERI>, più o meno è strutturato così:
Codice sorgente - presumibilmente Plain Text |
1
Parola 1
Parola 2
Parola 3
2
Altra parola 1
Altra parola 2
Altra parola 3
|
La prima combobox dovrebbe avere soltanto i numeri e, in base al numero della prima combobox, la seconda deve contenere una lista di parole (ovviamente ).
Ad esempio se nellala prima combobox è selezionato 1, nella seconda dovrebbero apparire "Parola 1", "Parola 2" e "Parola 3".
Secondo me l'approccio miglore sono gli array, ma potrei sbagliarmi. Voi che ne pensate? E' possibile? Come?
Grazie in anticipo.
Ultima modifica effettuata da WCodeLyokoYT il 21/09/2016 alle 20:22 |
|
Poggi Marco (Member)
Guru
Messaggi: 969
Iscritto: 05/01/2010
|
Ciao!
Immagino che non hai problemi a leggere il contenuto dei file, e codificare i dati.
Le possibili soluzioni su come risolvere il problema sono tante. Io ti consiglierei l'uso della liste, piuttosto che semplici vettori.
- https://msdn.microsoft.com/it-it/library/6sh2ey19(v=vs.110) ... -
Queste ultime non sono vincolate da una dimensione prefissata.
In ogni caso, creati una semplice struttura, o classe, in cui memorizzare i <numeri> e <parole e numeri> da scrivere nelle combobox.
Ultima modifica effettuata da Poggi Marco il 17/09/2016 alle 23:16 |
|
darioza (Normal User)
Pro
Messaggi: 104
Iscritto: 06/10/2014
|
Ciao! Concordo con quanto ti è stato detto, veloce e pratico
Ultima modifica effettuata da darioza il 19/09/2016 alle 16:46 |
|
WCodeLyokoYT (Normal User)
Newbie
Messaggi: 16
Iscritto: 27/09/2014
|
Grazie a tutti e due per le risposte. Ho seguito i vostri consigli e adesso ho una classe con una lista, la quale ha due proprietà. Adesso ho un altro problema, non riesco a codificare i dati. Riesco ad ottenere <numeri> che sarebbero la proprietà "linea" della lista, ma non <numeri e parole> (proprietà nome).
Il codice è questo
Codice sorgente - presumibilmente VB.NET |
Dim Linee As New StreamReader("C:\Users\Code\Desktop\Linee.txt") Dim variabile As Integer Private Fermate As List(Of Linee) Dim nom As String = "" Dim lin As String = "" Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load Fermate = New List(Of Linee) Do nom = Linee.ReadLine() If Not nom Like "?" Then Do lin = Linee.ReadLine() If lin Like "?" Then Dim a As Linee = New Linee(nom, lin) Fermate.Add(a) End If Loop Until lin Is Nothing End If Loop Until nom Is Nothing For Each Fermata As Linee In Fermate Dim temp As Integer = "0" temp = temp + 1 If Fermata.linea Like "?" Then If Fermata IsNot Nothing Then ComboBox1.Items.Add(Fermata.linea) End If End If Next End sub
|
Questo è per inserire gli elementi nella seconda combobox
Codice sorgente - presumibilmente VB.NET |
Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged ComboBox2.Items.Clear() For Each Fermata As Linee In Fermate If (Fermata.linea.Equals(ComboBox1.Text) And Fermata IsNot Nothing) Then ComboBox2.Items.Add(Fermata.nome) End If Next End Sub
|
Cosa sbaglio? |
|
darioza (Normal User)
Pro
Messaggi: 104
Iscritto: 06/10/2014
|
Postato originariamente da WCodeLyokoYT:
non riesco a codificare i dati |
Intendi che non riesci a pulire e ripopolare la combobox?
se provi ad accedere "manualmente" ai valori, le liste sono correttamente popolate? |
|
WCodeLyokoYT (Normal User)
Newbie
Messaggi: 16
Iscritto: 27/09/2014
|
No, non riesco a popolare la lista
|
|
darioza (Normal User)
Pro
Messaggi: 104
Iscritto: 06/10/2014
|
leggo da mobile, non ho modo di compilare il tuo codice al momento
le clausule if vengono soddisfatte?
errori non ne scaturiscono?
|
|
WCodeLyokoYT (Normal User)
Newbie
Messaggi: 16
Iscritto: 27/09/2014
|
Postato originariamente da darioza:
leggo da mobile, non ho modo di compilare il tuo codice al momento
le clausule if vengono soddisfatte?
errori non ne scaturiscono? |
No no, nessun errore |
|
darioza (Normal User)
Pro
Messaggi: 104
Iscritto: 06/10/2014
|
Se non scaturisce errore e non popola, probabilmente non passi le condizioni if...
Accertatene
oppure qualche errore logico....
Per il resto, 2 cose importanti...
La prima, in senso assoluto, anche se trascurabile in piccoli progetti, ma te la consiglio sempre, commenta!
Soprattutto in funzioni procedurali e quando i conti non tornano, anche per verificare che stai facendo quello che stai pensando di fare
La qual cosa ti torna utile se devi sottoporre a qualcuno il tuo codice
in secondo luogo, non ho presente come vuoi trattare la tua sorgente dati...
ma non ho capito una cosa...
Codice sorgente - presumibilmente C# / VB.NET |
Fermate = New List(Of Linee)
|
|
|